#!/bin/bash

# 雷达系统健康检查脚本
WORK_DIR="/home/admin1/lidar"
LOG_FILE="$WORK_DIR/logs/health_check.log"

# 检查端口是否被占用
check_port() {
    local port=$1
    if netstat -tlnp 2>/dev/null | grep ":$port " > /dev/null; then
        return 0  # 端口被占用
    else
        return 1  # 端口空闲
    fi
}

# 记录日志
log_message() {
    echo "$(date '+%Y-%m-%d %H:%M:%S'): $1" >> "$LOG_FILE"
}

# 检查服务状态
if ! check_port 5000 || ! check_port 7100; then
    log_message "检测到服务异常，尝试重启"
    
    # 切换到工作目录
    cd "$WORK_DIR"
    
    # 重启服务
    ./start_services.sh restart >> "$LOG_FILE" 2>&1
    
    log_message "服务重启完成"
else
    log_message "服务运行正常"
fi
